package com.wsc.lambda_expression;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

/**
 * JDK 7 与 JDK 8 的排序差别
 */
public class SortDemo {
    public static void main(String[] args) {
        ArrayList<String> name1 = new ArrayList<>();
        name1.add("google");
        name1.add("baidu");
        name1.add("alibaba");
        name1.add("facebool");
        name1.add("apple");

        ArrayList<String> name2 = new ArrayList<>();
        name2.add("google");
        name2.add("baidu");
        name2.add("alibaba");
        name2.add("facebool");
        name2.add("apple");

        SortDemo sortDemo = new SortDemo();
        System.out.println("使用Java7排序");
        sortDemo.sortByJava7(name1);
        System.out.println(name1);
        System.out.println("使用Java8排序");
        sortDemo.sortByJava8(name2);
        System.out.println(name2);



    }
    //使用 Java7 排序
    private void sortByJava7(ArrayList<String> name){
        Collections.sort(name, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o1.compareTo(o2);
            }
        });
    }

    //使用 Java8 排序
    private void sortByJava8(ArrayList<String> name){
        Collections.sort(name,((o1, o2) -> o1.compareTo(o2)));
    }
}
